package com.ruoyi.manage.service;

import java.util.List;

import com.ruoyi.manage.domain.Orders;
import com.ruoyi.manage.entity.order.OrderDistributeDto;

/**
 * 所有订单Service接口
 *
 * @author ruoyi
 * @date 2024-10-22
 */
public interface IOrdersService {
    /**
     * 查询所有订单
     *
     * @param ID 所有订单主键
     * @return 所有订单
     */
    public Orders selectOrdersByID(Long ID);

    /**
     * 查询所有订单列表
     *
     * @param orders 所有订单
     * @return 所有订单集合
     */
    public List<Orders> selectOrdersList(Orders orders);

    /**
     * 新增所有订单
     *
     * @param orders 所有订单
     * @return 结果
     */
    public int insertOrders(Orders orders);

    /**
     * 修改所有订单
     *
     * @param orders 所有订单
     * @return 结果
     */
    public int updateOrders(Orders orders);

    /**
     * 批量删除所有订单
     *
     * @param IDs 需要删除的所有订单主键集合
     * @return 结果
     */
    public int deleteOrdersByIDs(Long[] IDs);

    /**
     * 删除所有订单信息
     *
     * @param ID 所有订单主键
     * @return 结果
     */
    public int deleteOrdersByID(Long ID);

    /**
     * 订单派发
     * @param orderDistribute
     */
    void orderDistributeToWriter(OrderDistributeDto orderDistribute);

    void updateStatus(Orders orders);
}
